package com.ruoyi.system.service;

import com.ruoyi.common.core.domain.Ztree;
import com.ruoyi.system.domain.Type;
import java.util.List;

/**
 * 品种类别 服务层
 * 
 * @author ruoyi
 * @date 2019-04-22
 */
public interface ITypeService 
{
	/**
     * 查询品种类别信息
     * 
     * @param typeId 品种类别ID
     * @return 品种类别信息
     */
	public Type selectTypeById(Long typeId);
	
	/**
     * 查询品种类别列表
     * 
     * @param type 品种类别信息
     * @return 品种类别集合
     */
	public List<Type> selectTypeList(Type type);
	
	/**
     * 新增品种类别
     * 
     * @param type 品种类别信息
     * @return 结果
     */
	public int insertType(Type type);
	
	/**
     * 修改品种类别
     * 
     * @param type 品种类别信息
     * @return 结果
     */
	public int updateType(Type type);
		
	/**
     * 删除品种类别信息
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
	public int deleteTypeByIds(Long ids);

    String checkTypeNameUnique(Type type);

	List<Ztree> selectTypeTree(Type type);

    int selectTypeCount(Long typeId);

	Boolean checkTypeExistInventory(Long typeId);
}
